package xyz.lilei23.framework.core;

/**
 *  ApplicationContext 上下文抽象 提供入口 协调内部类 隐藏实现细节
 * @author jack
 * @date 31/07/2021 16:20
 * @version 1.0
 **/
public interface ApplicationContext {

    /**
     * 通过bean名称获取容器中bean
     * @param beanName bean名称
     * @return bean
     */
    Object getBean(String beanName);

    /**
     * 通过bean类获取容器中bean
     * @param clazz 类型
     * @return bean
     */
    <R> R getBean(Class<R> clazz);
}
